Impulse invariance

Impulse invariance is a technique for designing discrete-time infinite-impulse-response (IIR) filters from continuous-time filters in which the impulse response of the continuous-time system is sampled to produce the impulse response of the discrete-time system. The frequency response of the discrete-time system will be a sum of shifted copies of the frequency response of the continuous-time system; if the continuous-time system is approximately band-limited to a frequency less than the Nyquist frequency of the sampling, then the frequency response of the discrete-time system will be approximately equal to it for frequencies below the Nyquist frequency.

Contents

Discussion

The continuous-time system's impulse response, h_c(t), is sampled with sampling period T to produce the discrete-time system's impulse response, h[n].

h[n]=Th_c(nT)\,

Thus, the frequency responses of the two systems are related by

H(e^{j\omega}) = \sum_{k=-\infty}^\infty{H_c\left(j\frac{\omega}{T} %2B j\frac{2{\pi}}{T}k\right)}\,

If the continuous time filter is approximately band-limited (i.e. H_c(j\Omega) < \delta when |\Omega| \ge \pi/T), then the frequency response of the discrete-time system will be approximately the continuous-time system's frequency response for frequencies below π radians per sample (below the Nyquist frequency 1/(2T) Hz):

H(e^{j\omega}) = H_c(j\omega/T)\, for |\omega| \le \pi\,

Comparison to the bilinear transform

Note that aliasing will occur, including aliasing below the Nyquist frequency to the extent that the continuous-time filter's response is nonzero above that frequency. The bilinear transform is an alternative to impulse invariance that uses a different mapping that maps the continuous-time system's frequency response, out to infinite frequency, into the range of frequencies up to the Nyquist frequency in the discrete-time case, as opposed to mapping frequencies linearly with circular overlap as impulse invariance does.

Effect on poles in system function

If the continuous poles at s = s_k, the system function can be written in partial fraction expansion as

H_c(s) = \sum_{k=1}^N{\frac{A_k}{s-s_k}}\,

Thus, using the inverse Laplace transform, the impulse response is

h_c(t) = \begin{cases}
  \sum_{k=1}^N{A_ke^{s_kt}},  & t \ge 0 \\
  0, & \mbox{otherwise}
\end{cases}

The corresponding discrete-time system's impulse response is then defined as the following

h[n] = Th_c(nT)\,
h[n] = T \sum_{k=1}^N{A_ke^{s_knT}u[n]}\,

Performing a z-transform on the discrete-time impulse response produces the following discrete-time system function

H(z) = T \sum_{k=1}^N{\frac{A_k}{1-e^{s_kT}z^{-1}}}\,

Thus the poles from the continuous-time system function are translated to poles at z = eskT. The zeros, if any, are not so simply mapped.

Poles and zeros

If the system function has zeros as well as poles, they can be mapped the same way, but the result is no longer an impulse invariance result: the discrete-time impulse response is not equal simply to samples of the continuous-time impulse response. This method is known as the matched Z-transform method, or pole–zero mapping. In the case of all-pole filters, the methods are equivalent.

Stability and causality

Since poles in the continuous-time system at s = sk transform to poles in the discrete-time system at z = exp(skT), poles in the left half of the s-plane map to inside the unit circle in the z-plane; so if the continuous-time filter is causal and stable, then the discrete-time filter will be causal and stable as well.

Corrected formula

When a causal continuous-time impulse response has a discontinuity at t=0, the expressions above are not consistent.[1] This is because h_c (0) should really only contribute half its value to h[0].

Making this correction gives

h[n] = T \left( h_c(nT) - \frac{1}{2} h_c(0) \delta [n] \right) \,
h[n] = T \sum_{k=1}^N{A_ke^{s_knT} \left( u[n] - \frac{1}{2} \delta[n] \right)}\,

Performing a z-transform on the discrete-time impulse response produces the following discrete-time system function

H(z) = T \sum_{k=1}^N{\frac{A_k}{1-e^{s_kT}z^{-1}} - \frac{T}{2} \sum_{k=1}^N A_k}.

See also

References

  1. ^ [1] L. Jackson, "A correction to impulse invariance", IEEE Signal Processing Letters, Vol. 7, Oct. 2000.

Other sources

  • Oppenheim, Alan V. and Schafer, Ronald W. with Buck, John R. Discrete-Time Signal Processing. Second Edition. Upper Saddle River, New Jersey: Prentice-Hall, 1999.
  • Sahai, Anant. Course Lecture. Electrical Engineering 123: Digital Signal Processing. University of California, Berkeley. 5 April 2007.

External links